package com.billionsfinance.crs.utils;

import java.io.InputStream;

import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

/**
 * @Description:
 * @FileName: MyBatisQueryUtils.java
 * @author :WeiHui.Zhang
 * @Date: 2016年6月6日 下午7:55:57
 * @Version:V1.00
 */
public class MyBatisQueryUtils {

	private SqlSessionFactory sessionFactory = null;

	private MyBatisQueryUtils() {
		// mybatis的配置文件
		String resource = "mybatis-config.xml";
		// 使用类加载器加载mybatis的配置文件（它也加载关联的映射文件）
		InputStream is = MyBatisQueryUtils.class.getClassLoader().getResourceAsStream(resource);
		// 构建sqlSession的工厂
		sessionFactory = new SqlSessionFactoryBuilder().build(is);
	}

	public static MyBatisQueryUtils getInstance() {
		return MyBatisQueryUtilsStaticHolder.Holder;
	}

	public SqlSessionFactory getSessionFactory() {
		return sessionFactory;
	}

	private static class MyBatisQueryUtilsStaticHolder {
		private static MyBatisQueryUtils Holder = new MyBatisQueryUtils();
	}

}
